<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>文章列表</title>
    <link rel="stylesheet" href="./libs/bootstrap/css/bootstrap.min.css">
    <link rel="stylesheet" href="./css/reset.css">
    <link rel="stylesheet" href="./css/iconfont.css">
    <link rel="stylesheet" href="./css/main.css">
    <script src="./libs/jquery/jquery.min.js"></script>
    <script src="./libs/bootstrap/js/bootstrap.min.js"></script>
    <script src="./libs/layui/css/layui.css"></script>
    <script src="./libs/layui/layui.js"></script>
</head>

<body>
    <div class="container-fluid">
        <div class="common_title">
            文章类别管理
        </div>
        <div class="container-fluid common_con">
            <div class="row" style="margin-top: 10px;">
                <div
                    class="col-xs-offset-10 col-sm-offset-10 col-md-offset-10 col-lg-offset-10 col-xs-2 col-sm-2 col-md-2 col-lg-2">
                    <a href="javascript:void(0)" class="btn btn-success" id="xinzengfenlei" data-toggle="modal"
                        data-target="#myModal">新增分类</a>
                </div>
            </div>
            <table class="table table-striped table-bordered table-hover mp20 category_table">
                <thead>
                    <tr>
                        <th>名称</th>
                        <th>描述</th>
                        <th class="text-center" width="100">操作</th>
                    </tr>
                </thead>
                <tbody id="tbody">
                    <!-- <tr>
                        <td>爱生活</td>
                        <td>热爱生活</td>
                        <td class="text-center">
                            <a href="javascript:void(0)" data-toggle="modal" class=" btn btn-info btn-xs">编辑</a>
                            <a href="javascript:void(0)" class="btn btn-danger btn-xs">删除</a>
                        </td>
                    </tr> -->
                </tbody>
            </table>
        </div>
    </div>

    <!-- 新增分类布局区域 -->
    <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
        <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="modal-header">
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
                            aria-hidden="true">&times;</span></button>
                    <h4 class="modal-title" id="myModalLabel">新增分类</h4>
                </div>
                <div class="modal-body">
                    <div class="add_category">
                        <form action="" id="form">
                            <div class="form-group">
                                <label for="name">分类名</label>
                                <input type="text" class="form-control" id="name" name="name" placeholder="分类名">
                            </div>
                            <div class="form-group">
                                <label for="slug">分类别名</label>
                                <input type="text" class="form-control" id="slug" name="slug" placeholder="分类别名">
                            </div>
                            <div class="modal-footer">
                                <button type="button" data-dismiss="modal" class="btn btn-default">取消</button>
                                <button type="button" class="btn btn-primary btn_opt" id="save"
                                    onclick="save_category()">保存</button>
                            </div>
                        </form>
                    </div>
                </div>

            </div>
        </div>
    </div>
    <!-- 编辑分类 -->
    <div class="modal fade" id="editModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
        <div class="modal-dialog" role="document">
            <div class="modal-content">
                <div class="modal-header">
                    <button type="button" class="close" data-dismiss="modal" aria-label="Close"><span
                            aria-hidden="true">&times;</span></button>
                    <h4 class="modal-title" id="myModalLabel">编辑分类</h4>
                </div>
                <div class="modal-body">
                    <div class="add_category">
                        <form action="" id="form">
                            <div class="form-group">
                                <label for="name">名称</label>
                                <input type="text" class="form-control" id="name_edit" name="name_edit"
                                    placeholder="名称">
                            </div>
                            <div class="form-group">
                                <label for="slug">描述</label>
                                <input type="text" class="form-control" id="slug_edit" name="slug_edit"
                                    placeholder="描述">
                            </div>
                            <div class="modal-footer">
                                <button type="button" data-dismiss="modal" class="btn btn-default">取消</button>
                                <button type="button" class="btn btn-primary btn_opt" id="save_edit">保存</button>
                            </div>
                        </form>
                    </div>
                </div>

            </div>
        </div>
    </div>

    <script src="./js/http.js"></script>
    <script>
        $(function () {
            getcategory_list();
            // $('#save').click(function (e) {
            //     e.preventDefault();
            //     let params = $('#form').serialize();
            //     myAjax('POST', '/admin/category/add', params, function (resData) {
            //         if (resData.code !== 200) return;
            //         getcategory_list();
            //         console.log(resData);
            //         // 关闭模态框
            //         $('#myModal').modal('hide');
            //         $('#name').val();
            //         $('#slug').val();
            //     })
            // })
            // 编辑
            $('#save_edit').click(saveEdit)
        })
        function getcategory_list() {
            // myAjax('GET', '/admin/category/list', {}, function (resData) {
            //     resData.data.forEach(item => {
            //         let category_list = `
            //             <tr>
            //                 <td>${item.name}</td>
            //                 <td>${item.slug}</td>
            //                 <td class="text-center">
            //                     <a href="javascript:void(0)" data-toggle="modal" class=" btn btn-info btn-xs">编辑</a>
            //                     <a href="javascript:void(0)" class="btn btn-danger btn-xs">删除</a>
            //                 </td>
            //             </tr>
            //         `
            //         $('#tbody').append(category_list);
            //     })
            // })
            // 原生ajax方式
            let xml = new XMLHttpRequest();
            xml.open('GET', 'http://localhost:8080/api/v1/admin/category/list');
            xml.setRequestHeader('Authorization', localStorage.getItem('login_toke'));
            xml.send();
            xml.onload = function () {
                let resData = JSON.parse(xml.responseText);
                // console.log(resData);
                if (resData.code !== 200) return;
                let category_html = '';
                resData.data.forEach(item => {
                    let category_list = `
                        <tr>
                            <td>${item.name}</td>
                            <td>${item.slug}</td>
                            <td class="text-center">
                                <a href="javascript:void(0)" data-toggle="modal" class=" btn btn-info btn-xs" onclick="edit_category(${item.id})">编辑</a>
                                <a href="javascript:void(0)" class="btn btn-danger btn-xs" onclick="del_category(${item.id})">删除</a>
                            </td>
                        </tr>
                    `
                    category_html += category_list;
                })
                $('#tbody').html(category_html);
            }
        }

        function save_category() {
            // 通过onclick绑定的函数拿事件对象：window.event
            // let e = window.event;
            // e.preventDefault();
            // let params = $('#form').serialize();
            // myAjax('POST', '/admin/category/add', params, function (resData) {
            //     if (resData.code !== 200) return;
            //     getcategory_list();
            //     console.log(resData);
            //     // 关闭模态框
            //     $('#myModal').modal('hide');
            //     $('#name').val();
            //     $('#slug').val();
            // })
            // 原生ajax发送
            let xhr = new XMLHttpRequest();
            xhr.open('POST', 'http://localhost:8080/api/v1/admin/category/add');
            // psot请求需要设置请求头
            xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
            xhr.setRequestHeader('Authorization', localStorage.getItem('login_toke'));
            let obj = {
                name: $('#name').val(),
                slug: $('#slug').val()
            }
            let params = '';
            for (let key in obj) {
                params += `${key}=${obj[key]}&`
            }
            params = params.substring(0, params.length - 1);
            xhr.send(params);
            xhr.onload = function () {
                let res = JSON.parse(xhr.responseText);
                console.log(res);
                if (res.code !== 200) return;
                $('#myModal').modal('hide');
                $('#name').val();
                $('#slug').val();
                getcategory_list();
            }
        }
        // 编辑
        let edit_id = 0;
        function edit_category(c_id) {
            $('#editModal').modal('show');
            edit_id = c_id;
            myAjax('GET', '/admin/category/search', { id: c_id }, function (resData) {
                console.log(resData);
                if (!Array.isArray(resData.data) || resData.data.length <= 0) return;
                $('#name_edit').val(resData.data[0].name);
                $('#slug_edit').val(resData.data[0].slug);
            })
        }
        // 删除
        function del_category(c_id) {
            layui.use('layer', function () {
                let layer = layui.layer;

                layer.confirm('是否删除?', function (index) {
                    myAjax('POST', '/admin/category/delete', { id: c_id }, function (resData) {
                        if (resData.code !== 200) return;
                        getcategory_list();
                    })
                    layer.close(index);
                    layer.msg('删除成功！', { icon: 6 });
                });
            });
        }
        // 保存
        function saveEdit() {
            console.log(edit_id);
            let params = {
                id: edit_id,
                name: $('#name_edit').val(),
                slug: $('#slug_edit').val()
            }
            myAjax('POST', '/admin/category/edit', params, function (resData) {
                if (resData.code !== 200) return;
                $('#editModal').modal('hide');
                getcategory_list();
                layui.use('layer', function () {
                    let layer = layui.layer;
                    layer.msg('更改成功！', { icon: 6 });
                });
            })
        }
    </script>

</html>